Codes

function FNX(TH){
	return R*Math.sqrt(1-Math.pow((RR*Math.sin(TH)/R),2))-RR*Math.cos(TH);
}
function FNU(TH){
	return OM*RR*Math.sin(TH)*(1-RR*Math.cos(TH)/Math.sqrt(Math.pow(R,2)-Math.pow((RR*Math.sin(TH)),2)));
}

var R =2, RR = 0.5, D = 0.8, L = 8, MU = 1E-4, DELTA=0.001, RPM=1200,N=36,PI=3.1416;
var X=[],F=[];

document.writeln("R,RR,D,L=",R," ",RR," ",D," ",L);
document.writeln("
MU,DELTA,RPM,N,PI=",MU," ",DELTA," ",RPM," ",N," ",PI," "); var OM=2*PI*RPM/60 , PERIOD=2*PI/OM, DT =PERIOD/(2*N); var C1, W, F, a; C1=MU*PI*D*L/(12*DELTA); W=0; for (I=0;I<=N ;I++ ){ TH1=I*OM*DT; X.push(FNX(TH1)); F.push(C1*FNU(TH1)); } for (I=1;I<=N ;I++ ){ W=W+0.5*(F[I]+F[I-1])*(X[I]-X[I-1]); } var POWER=W/(0.5*PERIOD); document.write("
POWER="); document.writeln(POWER); document.write(" FT-LB/S");